package com.hex.ds.hdtp.core.app.license.activation.service;

import com.hex.ds.hdtp.core.app.license.activation.dto.response.ScriptConvertSurplusResponseDto;
import com.hex.ds.hdtp.core.app.script.transfer.dto.response.ScriptConvertSourceListResponseDto;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface IFuncActivationService {

    /**
     * @Method getScriptConvertSurplus
     * @Param
     * @Return com.hex.ds.hdtp.core.app.license.activation.dto.response.ScriptConvertSurplusResponseDto
     * @Description 获取脚本转换剩余量
     * @Author Yin.Yang
     * @Date 2024/4/1 18:47
     * @Version V1.0
     */
    ScriptConvertSurplusResponseDto getScriptConvertSurplus();

    /**
     * @Method uploadLicense
     * @Param multipartFileList
     * @Return void
     * @Description 上传激活license
     * @Author Yin.Yang
     * @Date 2024/4/1 18:48
     * @Version V1.0
     */
    void uploadLicense(List<MultipartFile> multipartFileList) throws Exception;

    /**
     * @Method deductScriptConvertSurplus
     * @Param scriptConvertList
     * @Return com.hex.ds.hdtp.core.app.license.activation.dto.response.ScriptConvertSurplusResponseDto
     * @Description 脚本转换后扣减剩余量
     * @Author Yin.Yang
     * @Date 2024/4/1 18:59
     * @Version V1.0
     */
    ScriptConvertSurplusResponseDto deductScriptConvertSurplus(ScriptConvertSourceListResponseDto scriptConvertList);

    /**
     * @Method checkScriptConvertStatus
     * @Param
     * @Return java.lang.Boolean
     * @Description 检查脚本转换状态
     * @Author Yin.Yang
     * @Date 2024/4/3 16:39
     * @Version V1.0
     */
    Boolean checkScriptConvertStatus();
}
